Computer networks enable the interconnection of network nodes for the exchange of data. Many such networks are tremendously complex. The Internet, for example, contains a large number of physical and logical network boundaries, employs a variety of network topologies, and interconnects a broad diversity of endpoints and intermediate nodes. Computer networks also support myriad network services, which are typically expected to execute smoothly despite a highly diverse networking environment. The complexity of a given network can make network testing particularly challenging.